package com.coincalf.framework.dto;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.math.BigDecimal;

/**
 * @Description:
 * @Author: Chen Long
 * @Date: Created in 2018/5/17 下午3:07
 * @Modified by: Chen Long
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class ForexMarketDTO {

    /**
     * 交易对ID
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long marketId;

    /**
     * 交易区域Id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long tradeAreaId;

    /**
     * 交易对标识符
     */
    private String symbol;

    /**
     * 交易对名称
     */
    private String name;

    /**
     * 最新成交价（成交后需要更新）
     */
    private BigDecimal price;

    /**
     * 买一价（委托下单后需要更新）
     */
    private BigDecimal bidPrice;

    /**
     * 卖一价（委托下单后需要更新）
     */
    private BigDecimal askPrice;

    /**
     * 点差（委托下单后需要更新，修改market后需要更新）
     */
    private BigDecimal spread;

    /**
     * 合约单位
     */
    private Integer contractUnit;

    /**
     *（委托下单后需要更新，修改market后需要更新）
     * 计算保证金基础数据
     */
    private BigDecimal baseMargin;

    /**
     * 涨跌幅（成交后需要更新）
     */
    private double change;
}
